Post-drive summary with tutorial

ABSTRACT

Aspects of the subject matter described herein relate to vehicle notifications. In aspects, while a vehicle is in motion, certain types of notifications are not presented to the driver. After the vehicle has stopped and a point appropriate for notification is occurring, a notification may be presented. The notification may assist a driver in, for example, learning features of the vehicle, improving efficiency, or in many other ways.

BACKGROUND

Increasingly, computer-like features and user interfaces are findingtheir way into automobiles. Where once a car had a set of analog gaugeslocated on a dashboard, newer cars often have digital gauges and mayalso have a display that displays mapping information, backup video,trip statistics, audio data, computer applications, and the like. Thefeature set of the user-interface for an automobile may include aplethora of options. While these options may be detailed in a lengthyautomobile owner's manual and perhaps other documentation, many ownersdo not read these materials.

The subject matter claimed herein is not limited to embodiments thatsolve any disadvantages or that operate only in environments such asthose described above. Rather, this background is only provided toillustrate one exemplary technology area where some embodimentsdescribed herein may be practiced.

SUMMARY

Briefly, aspects of the subject matter described herein relate tovehicle notifications. In aspects, while a vehicle is in motion, certaintypes of notifications are not presented to the driver. After thevehicle has stopped and a point appropriate for notification isoccurring, a notification may be presented. The notification may assista driver in, for example, learning features of the vehicle, improvingefficiency, or in many other ways.

This Summary is provided to briefly identify some aspects of the subjectmatter that is further described below in the Detailed Description. ThisSummary is not intended to identify key or essential features of theclaimed subject matter, nor is it intended to be used to limit the scopeof the claimed subject matter.

The phrase “subject matter described herein” refers to subject matterdescribed in the Detailed Description unless the context clearlyindicates otherwise. The term “aspects” should be read as “at least oneaspect.” Identifying aspects of the subject matter described in theDetailed Description is not intended to identify key or essentialfeatures of the claimed subject matter.

The aspects described above and other aspects of the subject matterdescribed herein are illustrated by way of example and not limited inthe accompanying figures in which like reference numerals indicatesimilar elements and in which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram representing an exemplary computingenvironment into which aspects of the subject matter described hereinmay be incorporated;

FIGS. 2-6 are block diagrams of exemplary display pages in accordancewith aspects of the subject matter described herein; and

FIG. 7 is a flow diagram that generally represents exemplary actionsthat may occur in accordance with aspects of the subject matterdescribed herein.

DETAILED DESCRIPTION Definitions

As used herein, the term “includes” and its variants are to be read asopen-ended terms that mean “includes, but is not limited to.” The term“or” is to be read as “and/or” unless the context clearly dictatesotherwise. The term “based on” is to be read as “based at least in parton.” The terms “one embodiment” and “an embodiment” are to be read as“at least one embodiment.” The term “another embodiment” is to be readas “at least one other embodiment.”

As used herein, terms such as “a,” “an,” and “the” are inclusive of oneor more of the indicated item or action. In particular, in the claims areference to an item generally means at least one such item is presentand a reference to an action means at least one instance of the actionis performed.

The term data is to be read broadly to include anything that may berepresented by one or more computer storage elements. Logically, datamay be represented as a series of 1's and 0's in volatile ornon-volatile memory. In computers that have a non-binary storage medium,data may be represented according to the capabilities of the storagemedium. Data may be organized into different types of data structuresincluding simple data types such as numbers, letters, and the like,hierarchical, linked, or other related data types, data structures thatinclude multiple other data structures or simple data types, and thelike. Some examples of data include information, program state, programdata, other data, and the like.

Headings are for convenience only; information on a given topic may befound outside the section whose heading indicates that topic.

Other definitions, explicit and implicit, may be included below.

Exemplary Operating Environment

FIG. 1 illustrates an example of a suitable environment 100 in whichaspects of the subject matter described herein may be implemented. Theenvironment 100 is only one example of a suitable environment and is notintended to suggest any limitation as to the scope, use, orfunctionality of aspects of the subject matter described herein. Neithershould the environment 100 be interpreted as having any dependency orrequirement relating to any one or combination of components illustratedin the exemplary environment 100.

Furthermore, while various examples are illustrated in the figures anddescribed in the text herein, there is no intention that the examplesgiven are all-inclusive or exhaustive. Indeed, based on the teachingsherein, those skilled in the art may recognize many other examples thatmay properly be used without departing from the spirit or scope ofaspects of the subject matter described herein.

Illustrated in FIG. 1 is a vehicle 102. The vehicle 102 may include, forexample, a car, van, truck, motorcycle, boat, tractor, harvester, othervehicle, or the like. The vehicle 102 may include a vehicle system 101.The vehicle system 101 may include exemplary components such as thesensors 105-107, the inputs 110-112, the outputs 115-119, the inputmanager 120, the processor 125, the output manager 130, other components(not shown), and the like.

The components illustrated in FIG. 1 are exemplary and are not meant tobe all-inclusive of components that may be needed or included.Furthermore, the number of components may differ in other embodimentswithout departing from the spirit or scope of aspects of the subjectmatter described herein. In some embodiments, the components describedin conjunction with FIG. 1 may be included in other components (shown ornot shown) or placed in subcomponents without departing from the spiritor scope of aspects of the subject matter described herein. In someembodiments, the components and/or functions described in conjunctionwith FIG. 1 may be distributed across multiple devices.

As used herein, the term component may be read in alternateimplementations to include hardware such as all or a portion of adevice, a collection of one or more software modules or portionsthereof, some combination of one or more software modules or portionsthereof and one or more devices or portions thereof, or the like. In oneimplementation, a component may be implemented by structuring (e.g.,programming) a processor to perform one or more actions.

One or more of the components illustrated in FIG. 2 may be implementedusing one or more computing devices or portions thereof. Such devicesmay include, for example, personal computers, server computers,hand-held or laptop devices, multiprocessor systems,microcontroller-based systems, set-top boxes, programmable consumerelectronics, network PCs, minicomputers, mainframe computers, cellphones, personal digital assistants (PDAs), gaming devices, printers,appliances including set-top, media center, or other appliances,automobile-embedded or attached computing devices, other mobile devices,distributed computing environments that include any of the above systemsor devices, and the like.

Aspects of the subject matter described herein may be described in thecontext of computer-executable instructions, such as program modules,being executed by a computer. Generally, program modules includeroutines, programs, objects, components, data structures, and so forth,which perform particular tasks or implement particular abstract datatypes. Aspects of the subject matter described herein may also bepracticed in distributed computing environments where tasks areperformed by remote processing devices that are linked through acommunications network. In a distributed computing environment, programmodules may be located in both local and remote computer storage mediaincluding memory storage devices.

Alternatively, or in addition, the functionality described herein may beperformed, at least in part, by one or more hardware logic components.For example, and without limitation, illustrative types of hardwarelogic components that can be used include Field-programmable Gate Arrays(FPGAs), Program-specific Integrated Circuits (ASICs),Application-specific Standard Products (ASSPs), System-on-a-chip systems(SOCs), Complex Programmable Logic Devices (CPLDs), and the like.

With reference to FIG. 1, the processor 125 may be coupled to an inputmanager 120 and an output manager 130. The input manager 120 may receiveinput from the sensors 105-107, the touch screen 110, the audio inputdevice 111, and the other input device 112. Likewise, the output manager130 may provide output to the wireless output 115, the display 116, thegauges 117, the audio output device 118, the other output device 119,and the like. In one implementation, the display 116 and the touchscreen 110 may be implemented on the same device. Note that although asillustrated there are certain numbers of sensors, input devices, andoutput devices, it is to be understood that any practical number may bein a given vehicle system, and that there may be different numbers ofsensors, input devices and/or output devices in a given vehicle system.

In general, the sensors 105-107 sense characteristics regarding theenvironment 100 (which may include people, things, and conditions insidethe vehicle 102 as well as people, things, and conditions outside thevehicle 102). In general, a sensor may include any device that iscapable of detecting a characteristic of something—including, forexample, occupants, environmental or other conditions, items, or thelike inside or outside of the vehicle 102. Exemplary sensors includephotocells, cameras, microphones, GPSs, gyroscopes, galvanic skinresponse strips, cameras, temperature sensors, velocity sensors, motionsensors, humidity sensors, and the like.

The touch screen 110 may provide data to the input manager 120 regardinguser interactions with a display device in the vehicle 102. The audioinput device 111 may provide data corresponding to audio detected by amicrophone that is meant to capture sound, such as sound from anoccupant of the vehicle 102.

Based on the teachings herein, those skilled in the art may recognizeother input devices that may be used to provide input data to the inputmanager 120 without departing from the spirit or scope of aspects of thesubject matter described herein. Some examples of other input devicesinclude steering wheels, haptic controls, jog dials, keyboards, mice,storage devices (e.g., a USB drive), cameras, wireless devices, and thelike.

The wireless output 115 may provide a wireless signal to any device thatuses a wireless signals to communicate. The wireless output 115 mayinclude, for example, an antenna that transmits and receives signalsfrom such wireless devices.

The display 116 may display graphical information to an occupant of thevehicle. In one implementation, the display 116 may be touch-sensitiveso that it may also receive user input. In another implementation, thedisplay 116 may not be touch-sensitive.

The gauges 117 may show the status of various components of the vehicle102. In one implementation, one or more of the gauges 117 may beintegrated with the display 116 such that the information of the one ormore gauges is displayed via the display 116.

The audio output device 118 may provide audio. The audio may includeuser-requested audio (e.g., something that a user has requested beplayed on an audio system of the vehicle 102) as well as instructions,information, entertainment, or the like provided by the vehicle system101.

The store 135 may include any type of computer storage media. Computerstorage media includes both volatile and nonvolatile, removable andnon-removable media implemented in any method, article of manufacture,or technology for storage of information such as computer-readableinstructions, data structures, program modules, or other data. Computerstorage media includes RAM, ROM, EEPROM, solid state storage, flashmemory or other memory technology, CD-ROM, digital versatile discs(DVDs) or other optical disk storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by the processor 125. Computer storage media does notinclude communication media.

Communication media typically embodies computer-readable instructions,data structures, program modules, or other data in a modulated datasignal such as a carrier wave or other transport mechanism and includesany information delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct wired connection, and wireless media such asacoustic, RF, infrared and other wireless media.

A person may interact with the vehicle system 101 through various inputdevices of the vehicle system 101. Some exemplary input devices havebeen described above. Other exemplary input devices (not shown) mayinclude a joystick, game pad, scanner, a writing tablet, a pointingdevice (e.g. including a mouse, trackball, touch pad, or the like), orthe like.

Through the use of one or more of the above-identified input devices aNatural User Interface (NUI) may be established. A NUI, may rely onspeech recognition, touch and stylus recognition, gesture recognitionboth on screen and adjacent to the screen, air or other gestures, headand eye tracking, voice and speech, vision, touch, machine intelligence,and the like. Some exemplary NUI technology that may be employed tointeract with a user include touch sensitive displays, voice and speechrecognition, intention and goal understanding, galvanic skin responsestrips, particle/molecular detection systems, motion gesture detectionusing depth cameras (such as stereoscopic camera systems, infraredcamera systems, RGB camera systems, and combinations thereof), motiongesture detection using accelerometers/gyroscopes, facial recognition,3D displays, head, eye, and gaze tracking, immersive augmented realityand virtual reality systems, as well as technologies for sensing brainactivity using electric field sensing electrodes (EEG and relatedmethods).

The vehicle system 101 may operate in a networked environment usinglogical connections to one or more remote devices. Logical connectionsmay include a local area network (LAN), a wide area network (WAN), aphone network, near field networks, other networks, and the like.

For ease in presentation, the term “driver” is often used herein torefer to the person driving the vehicle. In alternative implementations,the teachings provided herein as applying to a driver may also apply toother individuals who are not driving the vehicle. Some exemplaryindividuals may include passengers in the vehicle, relatives or friendsof the driver, people who service or clean the vehicle, emergency orlaw-enforcement people who interact with the vehicle, other people, andthe like.

As a vehicle may have different drivers at different times, the vehiclesystem 101 may include an identity component that is able to identifythe driver and other occupants of the vehicle 102. To detect thatmultiple occupants are in the vehicle 102, the vehicle system 101 may,for example, include sensors that detect weight in each of the seats ofthe vehicle and/or whether seatbelts have been buckled, cameras thatvisually detect the occupants, other types of sensors, or the like.

In an implementation, the vehicle system 101 may be structured (e.g.,via instructions in hardware, firmware, and/or software available to theprocessor 125) to display certain information while the vehicle 102 isin motion and other information when the vehicle 102 is stopped and isat a point appropriate for notification. For example, the processor 125may be structured to create a circuit by loading instructions andexecuting them. The circuit may be responsive to a sensor detecting thatthe vehicle has stopped. The processor may be further structured (e.g.,by executing additional instructions) to determine whether the vehicleis at a point appropriate for presenting a notification to theindividual.

In one implementation, the vehicle system 101 may be configured torefrain from presenting all but emergency notifications (e.g.,notifications about issues that may affect the safety of the vehicle oroccupants), status (e.g., gauge like) notifications, and the like whilethe vehicle is in motion. Some examples of different information thatmay be displayed are illustrated in FIGS. 2-6.

In an implementation, the vehicle system 101 may be configured topresent some types of notifications even when the vehicle is in motion.For example, in a vehicle in which driving is automated, there may be noor few restrictions as to what notifications may be displayed. Asanother example, various notifications may be provided to backseatoccupants of a vehicle. As another example, other notificationsmentioned herein may be displayed while the vehicle is in motion if apoint appropriate for displaying the notifications is occurring.

In an implementation, while a vehicle is stopped, the vehicle beingstopped may not by itself be sufficient to justify displaying anon-critical notification. For example, a vehicle may be temporarilystopped at a stop light where displaying a notification may distract thedriver. As another example, the vehicle may temporarily stop in slowtraffic. Determining whether the vehicle is at a stopping pointappropriate for notification may include checking to see whether one ormore conditions (in addition to the vehicle being stopped) aresatisfied.

For example, in one implementation, a function that includes one or moreof the factors below with a weight for each of the included factors maybe used to generate a value. If the value is above a configurable orfixed threshold, the vehicle system 101 may determine that a pointappropriate for notification is occurring. In another implementation, arules-based system may be used to determine that a point appropriate fornotification is occurring. In another implementation, a hybrid processthat uses a function and rules may be used to determine that a pointappropriate for notification is occurring.

Some exemplary conditions include:

1. How long the vehicle has been stopped. For example, if a vehicle hasbeen stopped over X seconds (where X is configurable, tunable, orfixed), this may be factor in determining whether notification isappropriate.

2. Whether the vehicle has been turned off or is in another power state.When a vehicle has been turned off or is in another power state, thismay be a strong indicator that the driver is done driving the vehicle atleast for a while. When the vehicle is turned off or is in another powerstate, the vehicle system 101 may use this as a factor in determiningwhether notification is appropriate.

3. Whether the vehicle has been placed in park. A vehicle is oftenplaced in park just before the vehicle is turned off. The vehicle system101 may use this as a factor in determining whether notification isappropriate.

4. How long the vehicle has been in park. For example, if a vehicle hasbeen in park for over X seconds (where X is configurable, tunable, orfixed), this may be factor in determining whether notification isappropriate.

5. Where the vehicle is located. If the vehicle is parked in thedriver's garage, this may be used as a factor in determining that anappropriate notification point is occurring.

6. What time it is. For example, if the vehicle is located at home after5:00 p.m., this may be sufficient to determine that an appropriatenotification point is occurring. As another example, if the time is theapproximate time that the driver stops driving the car and the car islocated at home, this may be sufficient to determine that an appropriatenotification point is occurring.

7. Proximity to friends. For example, if the vehicle is located next toa friend, this may be deemed an inappropriate time to provide anotification as the driver may want to interact with the friend.

8. Data specific to people who live in a region. For example, people wholive in a region may be more receptive to notifications at the end ofthe day at home instead of notifications while stopping at a coffeeshop.

9. Whether the vehicle typically spends a lot of time at the location.For example, many commuter vehicles spend a lot of time at home and atwork. That the vehicle is stopped at a place where the vehicle typicallyspends a lot of time may be used as a factor in determining that a pointappropriate for notification is occurring.

10. What type of vehicle the vehicle is. For example, for youth-orientedvehicles, when the vehicle is shifted into park, this may be used as afactor in determining that a point appropriate for notification point isoccurring. As another example, for luxury vehicles, when the vehicle isactually turned off may be a more significant factor than when thevehicle is shifted into park in determining that a point appropriate fornotification point is occurring.

11. Historical data regarding a location. For example, historical datamay indicate that vehicles remain stopped at certain locations (e.g.,ferry terminals or other locations), for a long time. When the vehiclestops at such a location, this may be used as a factor in determiningthat a point appropriate for notification is occurring.

As mentioned previously, a modern car that includes a vehicle systemlike the vehicle system 101 may have many features. Without help, thedriver may not become aware of these features or may have issues usingthese features. For example, some issues include: issues usingbrought-in devices, issues using a core feature of the vehicle system,vehicle system use optimization suggestions (how to better use thevehicle system), issues using a software application of the vehiclesystem, optimization suggestions for a software application, verbosesystem notifications (e.g. extrapolating a check engine light intospecific notifications and guidance), and the like. By monitoring driverbehavior, the vehicle system 101 may be able to provide helpful hints tothe driver. These hints may be provided at the point determined above.For example:

1. A driver may have issues pairing a cell phone or other device (e.g.,headset, tablet, laptop, GPS, or other device) with the vehicle system101. In conjunction with recognizing this issue, the vehicle system 101may determine that an update is available that addresses pairing issuesbetween the driver's cell phone or other device and the vehicle system101. In response, the vehicle system 101 may notify the driver that anupdate has been received that addresses pairing issues and may provide abutton for downloading and installing the update.

2. A driver may use the vehicle system 101 to search for local places,but may not use the vehicle system 101 to search for media or localevents. The vehicle system 101 may observe this behavior and may notifythe driver of this unused feature that is similar or equivalent to whatthe driver already does.

3. A driver may not take advantage of available shortcuts. For example,a driver may navigate through a series of on-screen menus to select adestination for a mapping system. The same goal (e.g., of selecting thedestination) may be achieved through a much faster input mechanism(e.g., via a voice command). The vehicle system 101 may observe thebehavior of using the cumbersome method and may notify the driver of theshortcut.

4. A driver may not take advantage of fuel-saving features of a vehicle.For example, when driving at freeway speeds, the driver may keep thevehicle a gear that is less optimal for fuel economy. For example, thedriver may keep the vehicle in drive gear even though the vehicle mayhave an overdrive gear that is more fuel economical for driving atfreeway speeds. The vehicle system 101 may observe this behavior andbased on its knowledge of the capabilities of the vehicle 102 may notifythe driver of the overdrive gear, how the overdrive gear may beselected, and the benefits of using the overdrive gear for fuel economywhile driving at freeway speeds.

5. A driver may frequently listen to the radio. The vehicle system 101may observe this behavior and may notify the driver of an application,free or paid, that may be downloaded and installed to provide a betterlistening experience.

6. A driver may often use touch mechanisms to tune a radio to a certainstation. The vehicle system 101 may observe this behavior and may notifythe driver of speech option equivalents that allow the driver toaccomplish the same goal easier and faster and without compromisingsafety. For example, the vehicle system 101 may provide a notificationthat indicates, “Say FM 89.5” to cause the radio to tune to 89.5.

7. A driver may use two or more separate manual controls to cause avehicle to defrost various elements (e.g., windows and mirrors) of thevehicle 102. The vehicle system 101 may observe this behavior and maynotify the driver of a speech option equivalent (e.g., “Say defrostall”) that allows the driver to accomplish the same goal.

8. A driver may use favorites (e.g., presets) for a radio but may notuse favorites in other scenarios. For example, the driver may frequentlynavigate a contacts list to call the same group of people. The vehiclesystem 101 may observe this behavior and may notify the driver of acapability of setting favorites (e.g., pinning contact UI elements to acall screen) to accomplish the same goal.

As another example, a driver may not use favorites for navigation. Thesystem 101 may observe this behavior and may notify the driver of acapability of setting favorites (e.g., pinning location UI elements to anavigation screen) to accomplish the same goal.

9. A driver may be unfamiliar with different ways of interacting withapplications of the vehicle system 101. For example, the driver may notuse “Go to location” or “stop at location” voice commands to instruct amapping system. As another example, a driver may not be aware ofgestures or other user input that can be used to navigate a userinterface. A driver may not be aware of calendar features, or newapplications that are available, of how to use home page widgets, or thelike. In response, the vehicle system 101 may observe that the driverdoes not interact with the vehicle system 101 in these ways and mayprovide tips that teach the driver of these features.

10. The driver may be notified of new applications and updates forexisting applications for applications that are available via thevehicle system 101. The driver may be provided with a menu that allowsthe driver to view applications that are currently installed on thevehicle system 101 as well as applications that are available todownload to the vehicle system 101.

Aspects of the subject matter described herein may be used to influencedriver behavior through gamification. In gamification, the drivingsystem 101 attempts to introduce concepts of a game (e.g., scoringpoints, reaching objectives, competition, and the like) to improvedriver behavior. For example:

1. The driver may be informed how the driver's efficiency compares tothe efficiency of a friend and indicate what may be done to improveefficiency.

2. The driver may be informed specifically how the driver's mostprevious acceleration reduced fuel economy.

3. The driver may be informed that a safety score dropped because of howclose the driver was following other vehicles. The driver may be furtherinformed about how this may adversely affect the driver's vehicleinsurance in specific terms.

4. A driver may take various routes to work. The driving system 101 maynotice that different routes are taken to work and may determine howefficient each route is. A notification about the average efficiency ofeach route may be provided to the driver.

5. A vehicle may be provided by a ride sharing organization wheredifferent people drive the vehicle at different times. With measurementsprovided by the driving system 101, the organization may reward driversusing gamification.

The vehicle system 101 may observe a driver's response to notificationsand use this observation to guide subsequent notifications. Someexamples of this include:

1. If the vehicle system 101 observes that a driver is receptive to tipsabout how to improve fuel efficiency for the vehicle 102, the vehiclesystem 101 may increasingly provide such tips.

2. If the vehicle system 101 observes that a driver is more receptive tonotifications about new applications that are available, the vehiclesystem 101 may increasingly provide such notifications.

The vehicle system 101 may present or refrain from presentingnotifications based on the number and/or identity of people who are inthe vehicle 102. Some examples of this include:

1. Not displaying potentially personal information.

2. Presenting notification of coupons, deals, or activities suitable forthe number and/or the identities of the people in the vehicle 102.

The vehicle system 101 may generate multiple notifications forpresentation to a driver. To avoid overloading the driver withinformation, the number of notifications that may be presented at onetime may be limited to a configurable number. With multiplenotifications available to present, what notifications to display may beprioritized by the processor 125 based on rules obtained from the store135. In one implementation, prioritization may be based on one or morefactors including, for example:

1. How relevant the data is to the driver. For example, an update may beavailable that allows interoperability of the vehicle system 101 with anew cell phone, but if the cell phone is not detected as being in thevehicle, this may be a factor in prioritizing whether the notificationis provided at the notification point. On the other hand, if an updateis available for pairing with a cell phone the driver has and if thedriver has been having problems pairing the cell phone with the vehiclesystem 101, this may be a factor in prioritizing whether thenotification is provided at a notification point.

As another example of relevance, media and/or entertainmentnotifications may be relevant to a driver who spends significant (e.g.,over a pre-defined or configurable threshold) time interacting with amedia component. Furthermore, the amount of time a driver spendsinteracting with a component may be used as a factor in prioritizingwhether a notification regarding the component is provided at anotification point.

2. Appointments. How far away the next appointment is may be used as afactor in prioritizing whether the notification is provided at anotification point.

3. Vehicle characteristics. Some vehicles are completely battery poweredand have a limited range. Based on a current pattern and previousobserved driver behavior with regard to locations typically visited, thevehicle system 101 may determine that a notification is of high priorityto tell the driver that a re-charge is needed to reach locations thatthe vehicle system 101 predicts the driver will go based on pastobserved driver behavior. Similar prioritizations and notifications mayoccur for gas-powered and hybrid vehicles.

4. Receptivity to types of notification. As mentioned previously, adriver may be more receptive to some types of notifications than toother types of notifications. As other examples, the vehicle system 101may observe that the driver used previously-unused shortcuts indicatedin previous notifications, that the driver installed applicationsindicated in previous notifications, or the like. As another example,the vehicle system 101 may notice receptivity or non-receptivity viadetection of stress (e.g., via skin sensors, detection of a flushedface, detection of heart rate changes, detection of eye pupil dilation,or the like). Receptivity may be used as a factor in prioritizingwhether a notification is provided at a notification point.

5. Timeliness and/or location. The priority of some types ofnotifications may be influenced by a time of day, location of thevehicle, or the like. For example, if the vehicle is at a location farfrom home and obtains information about a cheese festival at thatlocation that may be of interest to the driver, this notification mayreceive higher priority if the vehicle stops close to the cheesefestival but low or no priority if the vehicle stops far away from thecheese festival (e.g., at home) or after the cheese festival is over. Atutorial notification, on the other hand, may be timely and be providedat home or far away from home. The vehicle system 101 may give higherpriority to those notifications that are appropriate for a specific timeand/or place.

Exemplary Displays

As mentioned previously, a vehicle equipped with a computer may providemany options—especially when the computer is tied into various vehiclecomponents as described in conjunction with FIG. 1. FIGS. 2-6 are blockdiagrams of exemplary display pages in accordance with aspects of thesubject matter described herein. By providing these examples, there isno intention to limit the types or formatting of information to theexamples provided. Rather, it is to be understood that the pages areexemplary only and that in other implementations, more, fewer, or otheruser interface elements and data may be displayed.

In one example, the display page 200 may include areas 220-222 and otheruser interface elements. The page 200 may be displayed automatically ifthe vehicle has stopped and a point appropriate for presentingnotification is occurring (as described previously). The page 200 mayalso be available via a menu of a display device, via voice input, orvia other user input as described herein. If the page 200 is availablewhen the vehicle is in motion, the information may be simplified orotherwise modified to avoid distracting a driver of the vehicle.

The page 200 may be one of several pages that are available and that maybe navigated to via menu options, gesturing, voice commands, or otherNUI navigation means.

In general, a user interface (UI) element (sometimes called a control,pane, button, or icon) may be composed of zero or more other UIelements. For example, a UI element may include zero or more other UIelements which may include zero or more other UI elements and so forth.In other examples, that the display page 200 may have more, fewer, orother UI elements which may be configured in a variety of ways withoutdeparting from the spirit or scope of the subject matter describedherein.

The area 220 may, for example, display UI elements 215-219 as well as atime of day element, a temperature element, and the like. The UIelements 215-219 may, when selected, allow a user to navigate to pageswhere the user may receive more detailed information regarding aspecific subsystem of the vehicle. For example, the UI elements 215-219may include icons that correspond to mapping, cell phone, music,environmental control, or other subsystems.

The area 221 may include tiles 223-225, areas 226-227, and buttons228-229. The tile 223 may display, for example, miles driven, time takenfor the current trip, when the next service is due. The tile 224 maydisplay details regarding a weather forecast for the day. The empty tile225 may be a placeholder for an area that a user may pin a desired tile.Other information displayed in a tile may include, for example,messages, a calendar, an efficiency score, and the like.

The tiles 223-225 may rotate to display other information. Theinformation displayed in a tile may change depending on whether thevehicle is moving or parked. The tiles 223 may be placed at otherlocations in the page 220 including at the top, right, bottom, or centerof the area 221.

The areas 226-227 may be used to display additional content. Forexample, the areas 226-227 may display:

1. Whether new software updates are available for the vehicle;

2. Whether vehicle service is required. If vehicle service is required,an area may further display, for example, what vehicle service isrequired, how overdue the vehicle service is, what things are typicallydone with for the required service, a service company at which theservice may be performed, an estimated cost of the service, and thelike.

3. Vehicle health information. Vehicle health information may include,for example, tire pressure, engine status, fuel remaining, other healthinformation, and the like.

4. Driving efficiency. Information may be displayed regarding efficiencyof a drive and tips as to how to drive more efficiently, challengeinformation, tips, and the like.

In one implementation, the areas 226-227 may be combined into a singlearea in which information is displayed (e.g., as a list). An example ofthis is illustrated in FIG. 6.

The action buttons 228-229 may allow the driver to indicate that anaction is to be performed by the vehicle system 101. For example, anaction may include:

1. Scheduling a service appointment.

2. Sharing a score or other information with friends.

3. Pairing a phone with the vehicle system 101.

4. Addressing an application issue (e.g., providing new credentials tologon to a service).

5. Providing a challenge (e.g., to friends in gamification).

The actions buttons 228-229 may be omitted if, for example, datadisplayed is informational only.

The area 222 may be used to display other UI elements as desired. In oneimplementation, the area 222 may show what other pages are available aswell as a search icon and a configuration icon. In anotherimplementation, the area 222 may be combined with other areas on thepage 200.

Turning to FIG. 3, the page 300 has some different information than thepage 200 of FIG. 2. Specifically, the area 226 provides a tip on how topin a contact to a home screen. In addition, the area 227 shows achallenge related to gamification.

Turning to FIG. 4, the page 400 has some different information than thepage 200 of FIG. 2. Specifically, the area 226 provides a notificationabout the efficiency of a drive together with a suggestion for improvingthe efficiency score. The button 228 allows the driver to share theefficiency with others.

The area 227 gives the driver a notification about an undiscoveredfeature (e.g., pairing a phone with the driving system) while the button229 allows the driver to being the pairing process.

Turning to FIG. 5, the page 500 has some different information than thepage 200 of FIG. 2. Specifically, the area 226 provides a notificationthat includes a tip regarding a voice command that allows the driver torequest audio and that gives the driver some examples. The action button228 may allow the driver to obtain more examples of speech commands.

The area 227 provides a notification that includes a tip regarding avoice command that allows the driver to add a stop point to a mappingsystem of the driving system. In implementation, the term “CoffeeShop”may be replaced with the trade name of a business that serves coffee orsome other business that the driver often stops at. The action button229 may allow the driver to obtain more examples of what commands can begiven to the mapping system.

Turning to FIG. 6, the page 600 has some different information than thepage 200 of FIG. 2. Specifically, the areas 226 and 227 have beencombined to create the area 605. The area 605 shows notifications ofvarious types that are provided in a list.

FIG. 7 is a flow diagram that generally represents exemplary actionsthat may occur in accordance with aspects of the subject matterdescribed herein. For simplicity of explanation, the methodologydescribed in conjunction with FIG. 7 is depicted and described as aseries of acts. It is to be understood and appreciated that aspects ofthe subject matter described herein are not limited by the actsillustrated and/or by the order of acts. In one embodiment, the actsoccur in an order as described below. In other embodiments, however, twoor more of the acts may occur in parallel or in another order. In otherembodiments, one or more of the actions may occur with other acts notpresented and described herein. Furthermore, not all illustrated actsmay be required to implement the methodology in accordance with aspectsof the subject matter described herein. In addition, those skilled inthe art will understand and appreciate that the methodology couldalternatively be represented as a series of interrelated states via astate diagram or as events.

Turning to FIG. 7, at block 705, the actions begin. At block 710 anobservation may be performed. For example, from data obtained from asensor and/or input device, the processor 125 may observe a behavior ofthe driver, observe environmental conditions, observe status of vehiclecomponents, or perform another observation. An observation may be madewhile the vehicle is moving or stopped.

At block 715, a notification may be generated. For example, referring toFIG. 1, for notifications based on driver behavior, the processor 125may generate a notification based on an observed interaction between thedriver and the vehicle 102. The notification may be generated at anytime and may have been generated during a previous driving interactionwith the driver. Generating a notification may include selecting anotification from a list of notifications, determining what static textand/or other graphics to combine with dynamic text and/or othergraphics, creating or selecting a function that when executed willreturn the notification, or the like.

At block 720, in one implementation, for certain notification, thenotification is not presented while the vehicle is moving. In anotherimplementation, a simplified or modified version of the notification maybe presented while the vehicle is moving. For example, referring to FIG.1, the processor 125 refrains from presenting the notification while thevehicle 102 is in motion.

At block 725, an indication is obtained that the vehicle has stopped.There may be many different indications that the vehicle has stopped.For example, a speedometer, GPS, or other speed measuring device may beused to obtain an indication that the vehicle has stopped via a speedindication of zero. As another example, that the vehicle has been placedin park may be used as an indication that the vehicle has stopped. Asanother example, that the vehicle has been turned off or is in anotherpower state may be used as an indication that the vehicle has stopped.Obtaining an indication that the vehicle has stopped may include pollingcomponents for speed data and/or receiving the indication withoutpolling.

Furthermore, a sensor from which an indication may be obtained that thevehicle has stopped may include a speedometer, GPS, or other speedmeasuring device, a sensor that indicates that the vehicle is in park, asensor that detects whether the vehicle is in park or another powerstate, or the like. For example, referring to FIG. 1, the processor mayobtain an indication that the vehicle 102 has stopped via one or more ofthe sensors 105-107.

At block 730, in response to detecting that the vehicle has stopped, adetermination is made as to whether a point appropriate for presentingthe notification is occurring. The point is appropriate if the pointsatisfies a specified condition more than (e.g., in addition to) thevehicle being stopped. As described previously, determining whether apoint appropriate for presenting the notification is occurring mayinclude executing instructions that include one or more of: how long thevehicle has been stopped, whether the vehicle has been turned off,whether the vehicle has been placed in park, how long the vehicle hasbeen placed in park, where the vehicle is located, what time it is,proximity of the vehicle to a friend of the individual, data regardingreceptivity of notifications for people who live in a region where thevehicle is located, historical data relating to how long vehicles remainstopped in a location at which the vehicle has stopped, what percentageof time the vehicle spends in a location at which the vehicle hasstopped, and what type of vehicle the vehicle is.

For example, referring to FIG. 1, the processor 125 may determine that apoint appropriate for presenting the notification is occurring if:

1. The vehicle 102 has stopped; and

2. The vehicle 102 has been stopped for at least a period of apre-defined threshold (e.g., longer than X seconds).

When the phrase “include one or more of” is used, this means that thecondition involves at least one of the items mentioned in the listfollowing that phrase and that the condition may also involve otheritems not mentioned in the list.

For example, referring to FIG. 1, the processor 125 may determine that apoint appropriate for presenting the notification is occurring if:

1. The vehicle 102 has stopped;

2. The vehicle 102 has been placed in park for at least a period of apre-defined threshold; and

3. Another condition (not mentioned in the list) has been met.

At block 735, if notification is appropriate the actions continue atblock 740; otherwise, the actions continue at block 745.

At block 740, waiting occurs. For example, referring to FIG. 1, if theprocessor 125 determines that a notification point is not yetappropriate (e.g., based on the current conditions), the processor 125may wait. After waiting, the actions may continue at any of the blocksof FIG. 7, but blocks 720 and block 730 are the ones illustrated. Forexample, the vehicle 102 may begin moving again in which case, theactions associated with block 720 are performed. As another example,after waiting, the processor 125 may again determine whethernotification is appropriate as described in conjunction with block 730.

At block 745, the notification is provided. For example, referring toFIG. 1, the processor 125 may cause the output manager 130 to displaythe notification via the display 116 or one of the other outputcomponents.

At block 750, other actions if any, may be performed. For example, otheractions may include:

1. Prioritizing presenting the notification based on observed previousreceptivity of the individual to similar notifications;

2. Providing gamification feedback to the user regarding fuelefficiency, the gamification feedback based on the observed interactionbetween an individual and the vehicle, the gamification feedbackindicating an action the individual is advised to take to improve thefuel efficiency;

3. Provides information regarding a feature of the vehicle that isavailable via an interaction other than the observed interaction betweenthe individual and the vehicle;

4. Providing a speech command that has an equivalent result to a resultobtained via the observed interaction between the individual and thevehicle;

5. Observing that the individual has been unsuccessful in pairing a cellphone with the vehicle, determining that an update of pairing softwareis available, and providing an indication of the update together with auser interface element that, if selected, initiates pairing of the cellphone using the pairing software as updated; and

6. Any other action indicated herein.

As can be seen from the foregoing detailed description, aspects havebeen described related to vehicle notifications. While aspects of thesubject matter described herein are susceptible to various modificationsand alternative constructions, certain illustrated embodiments thereofare shown in the drawings and have been described above in detail. Itshould be understood, however, that there is no intention to limitaspects of the claimed subject matter to the specific forms disclosed,but on the contrary, the intention is to cover all modifications,alternative constructions, and equivalents falling within the spirit andscope of various aspects of the subject matter described herein.

What is claimed is:
 1. A method implemented at least in part by aprocessor of a vehicle, the method comprising: while the vehicle is inmotion, refraining from presenting a notification, the notificationbased on an observed interaction between an individual and the vehicle;obtaining an indication that the vehicle has stopped; determiningwhether a point appropriate for presenting the notification isoccurring, the point satisfying a condition in addition to the vehiclebeing stopped; and if the point appropriate for presenting thenotification is occurring, presenting the notification.
 2. The method ofclaim 1, wherein determining whether a point appropriate for presentingthe notification is occurring comprises determining that the vehicle hasbeen stopped for at least a period of a pre-defined threshold.
 3. Themethod of claim 1, wherein determining whether a point appropriate forpresenting the notification is occurring comprises determining that thevehicle has been placed in park for at least a period of a pre-definedthreshold.
 4. The method of claim 1, wherein determining whether a pointappropriate for presenting the notification is occurring comprisesdetermining whether the point satisfies the condition by a processorexecuting instructions that include one or more of: how long the vehiclehas been stopped, whether the vehicle has been turned off, whether thevehicle has been placed in park, how long the vehicle has been placed inpark, where the vehicle is located, what time it is, proximity of thevehicle to a friend of the individual, data regarding receptivity ofnotifications for people who live in a region where the vehicle islocated, historical data relating to how long vehicles remain stopped ina location at which the vehicle has stopped, what percentage of time thevehicle spends in a location at which the vehicle has stopped, or whattype of vehicle the vehicle is.
 5. The method of claim 1, furthercomprising prioritizing presenting the notification based on observedprevious receptivity of the individual to similar notifications.
 6. Themethod of claim 1, wherein presenting the notification comprisesproviding gamification feedback to the user regarding safety, thegamification feedback based on the observed interaction between theindividual and the vehicle, the gamification feedback indicating anaction the individual is advised to take to improve the safety.
 7. Themethod of claim 1, wherein the notification provides informationregarding a feature of the vehicle that is available via an interactionother than the observed interaction between the individual and thevehicle.
 8. The method of claim 7, wherein presenting the notificationcomprises providing a speech command that has an equivalent result to aresult obtained via the observed interaction between the individual andthe vehicle.
 9. The method of claim 1, further comprising observing thatthe individual has been unsuccessful in pairing a cell phone with thevehicle, determining that an update of pairing software is available,and wherein presenting the notification comprises providing anindication of the update together with a user interface element that, ifselected, initiates pairing of the cell phone using the pairing softwareas updated.
 10. In a vehicle, a system, comprising: a sensor forindicating that the vehicle has stopped; an input device for receivinginput from an individual who interacts with the vehicle; an outputdevice for providing output to the individual; a processor coupled tothe sensor, the input device, and the output device, the processorstructured to respond to the sensor indicating that the vehicle hasstopped by determining whether a point appropriate for presenting anotification is occurring, the point satisfying a condition in additionto the vehicle being stopped, the processor further structured topresent the notification to the individual via the output device if thepoint appropriate for presenting the notification is occurring.
 11. Thesystem of claim 10, wherein the input device comprises a touch screenthat is structured to receive touch input from the individual, the touchscreen further configured to act as the output device for providingoutput to the individual.
 12. The system of claim 10, wherein the inputdevice comprises a microphone that is structured to receive audio inputfrom the individual.
 13. The system of claim 10, wherein the inputdevice comprises a jog dial that is structured to receive input from theindividual.
 14. The system of claim 10, wherein the processor beingstructured to determine whether a point appropriate for presenting anotification is occurring comprises the processor being structured toevaluate whether the condition is satisfied, the condition including oneor more of: how long the vehicle has been stopped, whether the vehiclehas been turned off, whether the vehicle has been placed in park, howlong the vehicle has been in park, where the vehicle is located, whattime it is, proximity to a friend, data specific to people who live in aregion in which the vehicle is, historical data relating to how longvehicles remain stopped in a location at which the vehicle has stopped,whether the vehicle spends a significant amount of time at a location atwhich the vehicle has stopped, or what type of vehicle the vehicle is.15. The system of claim 10, wherein the processor is further structuredto receive data from another sensor or the input device and to determinetherefrom a behavior of the individual, the processor further structuredto generate the notification based on the behavior.
 16. The system ofclaim 15, wherein the processor being structured to generate thenotification based on the behavior comprises the processor beingstructured to generate output that teaches the driver about a feature ofthe vehicle that the driver did not used as demonstrated by thebehavior.
 17. The system of claim 16, wherein the processor beingstructured to generate output that teaches the driver about a feature ofthe vehicle that the driver did not use as demonstrated by the behaviorcomprises the processing being structured to provide a speech commandequivalent to one or more actions taken by the driver.
 18. The system ofclaim 15, wherein the processor being structured to generate thenotification based on the behavior comprises the processor beingstructured to generate the notification based on receptivity of theindividual to previous notifications having a similar characteristic tothe notification.
 19. The system of claim 10, wherein the processor isfurther structured to determine the notification based on a number ofpeople in the vehicle and identities of the people.
 20. A vehicle,comprising: a display for displaying notifications to an individual; asensor for indicating that the vehicle has stopped; a storage forstoring executable instructions for generating the notifications; and aprocessor coupled to the display, the sensor, and the storage, theprocessor structured to respond to the sensor indicating that thevehicle has stopped by being structured to determine whether the vehicleis at a point appropriate for presenting a notification to theindividual, the point satisfying a condition in addition to the vehiclebeing stopped.